<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>TagM: ReadLogHandler Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">TagM
   &#160;<span id="projectnumber">1.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">ReadLogHandler Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Communicates with the log and receives signals from the <a class="el" href="class_i_r_sensor.html" title="Listens to the IR signal. When a usefull command is received the IRSensor looks what he can do with i...">IRSensor</a>. Sends the data from the <a class="el" href="class_log.html" title="Logs the Gametime, Health and WeaponID when the player gets hit. Resets and gets entire log when requ...">Log</a> to the <a class="el" href="class_read_log_controller.html" title="Gets the entire log and sends it to the USBC.">ReadLogController</a> for further process.  
 <a href="class_read_log_handler.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_read_log_handler_8h_source.html">ReadLogHandler.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for ReadLogHandler:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_read_log_handler.png" usemap="#ReadLogHandler_map" alt=""/>
  <map id="ReadLogHandler_map" name="ReadLogHandler_map">
<area href="class_r_t_o_s_1_1task.html" title="an independent thread of execution" alt="RTOS::task" shape="rect" coords="0,0,107,24"/>
</map>
 </div></div>

<p><a href="class_read_log_handler-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8ce42e80ca3b20f396f8dde8f9cc777e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ce42e80ca3b20f396f8dde8f9cc777e"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_read_log_handler.html#a8ce42e80ca3b20f396f8dde8f9cc777e">ReadLogHandler</a> (int prio, <a class="el" href="class_sound_controller.html">SoundController</a> *soundController)</td></tr>
<tr class="memdesc:a8ce42e80ca3b20f396f8dde8f9cc777e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br/></td></tr>
<tr class="memitem:a327bb211c5382397f9c8bd6ef042a062"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a327bb211c5382397f9c8bd6ef042a062"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_read_log_handler.html#a327bb211c5382397f9c8bd6ef042a062">RegisterLog</a> (<a class="el" href="class_log.html">Log</a> *log)</td></tr>
<tr class="memdesc:a327bb211c5382397f9c8bd6ef042a062"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register the instance of the <a class="el" href="class_log.html" title="Logs the Gametime, Health and WeaponID when the player gets hit. Resets and gets entire log when requ...">Log</a> class provided with this call. <br/></td></tr>
<tr class="memitem:afb7bd88524bd16a93c9fddf48ce2365b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb7bd88524bd16a93c9fddf48ce2365b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_read_log_handler.html#afb7bd88524bd16a93c9fddf48ce2365b">ReadLog</a> ()</td></tr>
<tr class="memdesc:afb7bd88524bd16a93c9fddf48ce2365b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the ReadLog flag. <br/></td></tr>
<tr class="memitem:ae3965e064cbbc76acbfc266a3b499a0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3965e064cbbc76acbfc266a3b499a0c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_read_log_handler.html#ae3965e064cbbc76acbfc266a3b499a0c">WriteLog</a> (<a class="el" href="class_log_line.html">LogLine</a> arr[])</td></tr>
<tr class="memdesc:ae3965e064cbbc76acbfc266a3b499a0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes the logFile in the LogMailBox with the logLines provided with this call. <br/></td></tr>
<tr class="inherit_header pub_methods_class_r_t_o_s_1_1task"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_r_t_o_s_1_1task')"><img src="closed.png" alt="-"/>&nbsp;Public Member Functions inherited from <a class="el" href="class_r_t_o_s_1_1task.html">RTOS::task</a></td></tr>
<tr class="memitem:ae50f0e253e66c53e3b28e388133c8fe7 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#ae50f0e253e66c53e3b28e388133c8fe7">task</a> (unsigned int <a class="el" href="class_r_t_o_s_1_1task.html#ac5a30dff650f3b714491509cabad5dff">priority</a>=RTOS_MAX_PRIORITY, const char *tname=&quot;&quot;, unsigned int stacksize=RTOS_DEFAULT_STACK_SIZE)</td></tr>
<tr class="memdesc:ae50f0e253e66c53e3b28e388133c8fe7 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor, specify priority, name and stacksize  <a href="#ae50f0e253e66c53e3b28e388133c8fe7"></a><br/></td></tr>
<tr class="memitem:a5035326ddaf51d9219a17ca6c5a23c83 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5035326ddaf51d9219a17ca6c5a23c83"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a5035326ddaf51d9219a17ca6c5a23c83">~task</a> (void)</td></tr>
<tr class="memdesc:a5035326ddaf51d9219a17ca6c5a23c83 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">throws an error, beacuse tasks should never be destroyed <br/></td></tr>
<tr class="memitem:a2e0e3c92d9479336535a2ef877103f36 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a2e0e3c92d9479336535a2ef877103f36">suspend</a> (void)</td></tr>
<tr class="memdesc:a2e0e3c92d9479336535a2ef877103f36 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">suspend a task (prevent execution until a resume)  <a href="#a2e0e3c92d9479336535a2ef877103f36"></a><br/></td></tr>
<tr class="memitem:a841b14aaab18d883959f034510dd9376 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a841b14aaab18d883959f034510dd9376">resume</a> (void)</td></tr>
<tr class="memdesc:a841b14aaab18d883959f034510dd9376 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">continue a suspended task  <a href="#a841b14aaab18d883959f034510dd9376"></a><br/></td></tr>
<tr class="memitem:aa3eec7220a2724d30e2156cc395035f2 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#aa3eec7220a2724d30e2156cc395035f2">release</a> (void)</td></tr>
<tr class="memdesc:aa3eec7220a2724d30e2156cc395035f2 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">release the CPU to the scheduler  <a href="#aa3eec7220a2724d30e2156cc395035f2"></a><br/></td></tr>
<tr class="memitem:a9d639b6f1147e0e3dbc603cdd8c52bd4 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a9d639b6f1147e0e3dbc603cdd8c52bd4">sleep</a> (unsigned int time)</td></tr>
<tr class="memdesc:a9d639b6f1147e0e3dbc603cdd8c52bd4 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">wait for some time  <a href="#a9d639b6f1147e0e3dbc603cdd8c52bd4"></a><br/></td></tr>
<tr class="memitem:ac5a30dff650f3b714491509cabad5dff inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5a30dff650f3b714491509cabad5dff"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#ac5a30dff650f3b714491509cabad5dff">priority</a> (void) const </td></tr>
<tr class="memdesc:ac5a30dff650f3b714491509cabad5dff inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">report the task priority <br/></td></tr>
<tr class="memitem:a56e4d07750c49b6620b0407013b177c1 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56e4d07750c49b6620b0407013b177c1"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a56e4d07750c49b6620b0407013b177c1">name</a> (void) const </td></tr>
<tr class="memdesc:a56e4d07750c49b6620b0407013b177c1 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">report the task name <br/></td></tr>
<tr class="memitem:ab02fe6432956956957bb2629dc9a3031 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab02fe6432956956957bb2629dc9a3031"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#ab02fe6432956956957bb2629dc9a3031">is_suspended</a> (void) const </td></tr>
<tr class="memdesc:ab02fe6432956956957bb2629dc9a3031 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">report whether the task is currently suspended <br/></td></tr>
<tr class="memitem:a1e0b2566b673b0e4e6efd63a80284d35 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e0b2566b673b0e4e6efd63a80284d35"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a1e0b2566b673b0e4e6efd63a80284d35">is_blocked</a> (void) const </td></tr>
<tr class="memdesc:a1e0b2566b673b0e4e6efd63a80284d35 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">report whether the task is currently blocked <br/></td></tr>
<tr class="memitem:a8ec666474a7668f78da3438dfa818a8e inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ec666474a7668f78da3438dfa818a8e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a8ec666474a7668f78da3438dfa818a8e">is_ready</a> (void) const </td></tr>
<tr class="memdesc:a8ec666474a7668f78da3438dfa818a8e inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">report whether the task is currently ready for execution <br/></td></tr>
<tr class="memitem:a76913289a89a86fcf40171e28bfcfe98 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76913289a89a86fcf40171e28bfcfe98"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a76913289a89a86fcf40171e28bfcfe98">logging_set</a> (bool log)</td></tr>
<tr class="memdesc:a76913289a89a86fcf40171e28bfcfe98 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">for debugging: switch logging on or off <br/></td></tr>
<tr class="memitem:ac94209dd2efea030a70d48dabc890f38 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac94209dd2efea030a70d48dabc890f38"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#ac94209dd2efea030a70d48dabc890f38">print</a> (std::ostream &amp;stream, bool header=true) const </td></tr>
<tr class="memdesc:ac94209dd2efea030a70d48dabc890f38 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">print task statistics <br/></td></tr>
<tr class="memitem:a6fc603d0f1c8a94813586d3dfd123fcc inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_r_t_o_s_1_1event.html">event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a6fc603d0f1c8a94813586d3dfd123fcc">wait</a> (void)</td></tr>
<tr class="memdesc:a6fc603d0f1c8a94813586d3dfd123fcc inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">wait for all waitables created for this task  <a href="#a6fc603d0f1c8a94813586d3dfd123fcc"></a><br/></td></tr>
<tr class="memitem:a7b20fada91e6d232f6791ebc9675e3fc inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_r_t_o_s_1_1event.html">event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a7b20fada91e6d232f6791ebc9675e3fc">wait</a> (const <a class="el" href="class_r_t_o_s_1_1waitable.html">waitable</a> &amp;w)</td></tr>
<tr class="memdesc:a7b20fada91e6d232f6791ebc9675e3fc inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">wait for a single waitable  <a href="#a7b20fada91e6d232f6791ebc9675e3fc"></a><br/></td></tr>
<tr class="memitem:a09111916c62632df3042f5991ac7ab42 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_r_t_o_s_1_1event.html">event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a09111916c62632df3042f5991ac7ab42">wait</a> (const <a class="el" href="class_r_t_o_s_1_1event.html">event</a> &amp;<a class="el" href="class_r_t_o_s_1_1task.html#aebeb5ca826f7137a66474bbee3bf74a1">set</a>)</td></tr>
<tr class="memdesc:a09111916c62632df3042f5991ac7ab42 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">wait for a set of waitables  <a href="#a09111916c62632df3042f5991ac7ab42"></a><br/></td></tr>
<tr class="memitem:aebeb5ca826f7137a66474bbee3bf74a1 inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebeb5ca826f7137a66474bbee3bf74a1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#aebeb5ca826f7137a66474bbee3bf74a1">set</a> (<a class="el" href="class_r_t_o_s_1_1flag.html">flag</a> &amp;w)</td></tr>
<tr class="memdesc:aebeb5ca826f7137a66474bbee3bf74a1 inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">set a flag <br/></td></tr>
<tr class="memitem:a0ea383a40c40d9f69fe8e29fb36fa40d inherit pub_methods_class_r_t_o_s_1_1task"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_o_s_1_1task.html#a0ea383a40c40d9f69fe8e29fb36fa40d">ignore_activation_time</a> (void)</td></tr>
<tr class="memdesc:a0ea383a40c40d9f69fe8e29fb36fa40d inherit pub_methods_class_r_t_o_s_1_1task"><td class="mdescLeft">&#160;</td><td class="mdescRight">ignore this activation for the statistics  <a href="#a0ea383a40c40d9f69fe8e29fb36fa40d"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Communicates with the log and receives signals from the <a class="el" href="class_i_r_sensor.html" title="Listens to the IR signal. When a usefull command is received the IRSensor looks what he can do with i...">IRSensor</a>. Sends the data from the <a class="el" href="class_log.html" title="Logs the Gametime, Health and WeaponID when the player gets hit. Resets and gets entire log when requ...">Log</a> to the <a class="el" href="class_read_log_controller.html" title="Gets the entire log and sends it to the USBC.">ReadLogController</a> for further process. </p>
</div><hr/>The documentation for this class was generated from the following files:<ul>
<li>headers/<a class="el" href="_read_log_handler_8h_source.html">ReadLogHandler.h</a></li>
<li>compile/ReadLogHandler.cpp</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jun 27 2012 11:07:15 for TagM by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>
